package 代码记录.指定公司代码练习记录.西安.分值100分;

import java.util.Arrays;
import java.util.Scanner;

/**
 * @author zx
 * @create 2023-06-29 20:39
 * 类似于岛屿题的思路
 */
public class 统计监控需要打开多少监控器 {//1
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int m = sc.nextInt();
        int n = sc.nextInt();
        int[][] arr = new int[m][n];
        for(int i = 0;i < m;i++){
            for(int j = 0;j < n;j++){
                arr[i][j] = sc.nextInt();
            }
            System.out.println(Arrays.toString(arr[i]));
        }
        for(int i = 0;i < m;i++){
            for(int j = 0;j < n;j++){
                if(arr[i][j] == 1){
                    helper(arr,i,j);
                }
            }
        }
        int res = 0;
        for(int i = 0;i < m;i++){
            for(int j = 0;j < n;j++){
                if(arr[i][j] != 0){
                    res++;
                }
            }
        }
        System.out.println(res);
    }

    /**
     * 如果坐标为(i,j)的格子为1,将它的上下左右都变为2
     */
    private static void helper(int[][] arr, int i, int j){
        if(i - 1 >= 0){
            arr[i - 1][j] = 2;
        }
        if(j - 1 >= 0){
            arr[i][j - 1] = 2;
        }
        if(i + 1 < arr.length){
            arr[i + 1][j] = 2;
        }
        if(j + 1 < arr[0].length){
            arr[i][j + 1] = 2;
        }
    }
}
